package cn.oms.stock.provider.dao.entity;

import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.TableName;
import java.time.LocalDate;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 
 * </p>
 *
 * @author AllenChen曾晨
 * @since 2022-04-17
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("drug_send_history")
@ApiModel(value="DrugSendHistory对象", description="")
public class DrugSendHistory implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "发药ID(新增生成)")
    @TableField("ID")
    private String id;

    @ApiModelProperty(value = "病例ID（对应病例表）")
    @TableField("EMR_CODE")
    private String emrCode;

    @ApiModelProperty(value = "患者ID（对应基本信息表）")
    @TableField("PATIENT_ID")
    private String patientId;

    @ApiModelProperty(value = "处方号CODE（对应处方表）（MOE202102040003）（MOE DO）")
    @TableField("PRESCRIPTION_CODE")
    private String prescriptionCode;

    @ApiModelProperty(value = "处方版本号（对应处方表）")
    @TableField("PRESCRIPTION_SQL")
    private Integer prescriptionSql;

    @ApiModelProperty(value = "医嘱ID（对应医嘱表ID）")
    @TableField("ORDER_CODE")
    private String orderCode;

    @ApiModelProperty(value = "入库批次号CODE（新增入库填写）（用于关联发药历史）（PP201202007）")
    @TableField("PURCHASE_BATCH_CODE")
    private String purchaseBatchCode;

    @ApiModelProperty(value = "产品CODE（对应药品知识库的药品代码）")
    @TableField("ITEM_CODE")
    private String itemCode;

    @ApiModelProperty(value = "产品详情（对应药品详情信息、名称、大小）")
    @TableField("ITEM_DESCRIPTION")
    private String itemDescription;

    @ApiModelProperty(value = "产品包装CODE（产品包装）")
    @TableField("ITEM_SPECIFICATION_CODE")
    private String itemSpecificationCode;

    @ApiModelProperty(value = "产品包装规格详情（10mg,20mg）（10 tab/roll dis、12 tab/set、10 tab/bag）")
    @TableField("ITEM_SPECIFICATION_DETAIL")
    private String itemSpecificationDetail;

    @ApiModelProperty(value = "产品生产厂家CODE（对应厂家表）")
    @TableField("MANUFACTURER_CODE")
    private String manufacturerCode;

    @ApiModelProperty(value = "产品生产厂家名称（对应厂家表）")
    @TableField("MANUFACTURER_NAME")
    private String manufacturerName;

    @ApiModelProperty(value = "产品生产厂家入库产品厂家批准代码（国药准字号）")
    @TableField("MANUFACTURER_APPROVAL_CODE")
    private String manufacturerApprovalCode;

    @ApiModelProperty(value = "产品过期时间（对应药品进货表某批次药品过期时间）（2024-01-28）")
    @TableField("ITEM_EXPIRATION_TIME")
    private LocalDate itemExpirationTime;

    @ApiModelProperty(value = "发药量 （Quantity）（+或者-）（-300 tab）")
    @TableField("SEND_QTY")
    private BigDecimal sendQty;

    @ApiModelProperty(value = "基本单位CODE（对应数量单位表）")
    @TableField("BASE_UNIT_CODE")
    private String baseUnitCode;

    @ApiModelProperty(value = "基本单位(简称)（中文）")
    @TableField("BASE_UNIT_NAME_CN")
    private String baseUnitNameCn;

    @ApiModelProperty(value = "基本单位(简称)（英文）")
    @TableField("BASE_UNIT_NAME_EN")
    private String baseUnitNameEn;

    @ApiModelProperty(value = "药房信息CODE（对应药房信息表CODE）")
    @TableField("DEPARTMENT_CODE")
    private String departmentCode;

    @ApiModelProperty(value = "发药窗口CODE（对应药房信息表）")
    @TableField("SEND_WINDOW")
    private String sendWindow;

    @ApiModelProperty(value = "药品货架位置（ Z1-AS2-03 (S)、Z1-A101-01 (W)）")
    @TableField("SHELF_LOCATION")
    private String shelfLocation;

    @ApiModelProperty(value = "发药人CODE（对应医生表）")
    @TableField("SEND_MAN_CODE")
    private String sendManCode;

    @ApiModelProperty(value = "发药人信息（对应医生表）")
    @TableField("SEND_MAN_NAME")
    private String sendManName;

    @ApiModelProperty(value = "创建人编号CODE（对应医生信息表）")
    @TableField("CREATE_MAN_CODE")
    private String createManCode;

    @ApiModelProperty(value = "创建人名称（Dr 某某医生-某某科室）")
    @TableField("CREATE_MAN_NAME")
    private String createManName;

    @ApiModelProperty(value = "创建时间")
    @TableField("CREATE_TIME")
    private LocalDate createTime;

    @ApiModelProperty(value = "删除标记")
    @TableField("DEL_FLAG")
    private Integer delFlag;


}
